iT邦幫忙

2024 iThome 鐵人賽

DAY 27
0

基本上的主要功能我們其實完成的差不多了,不過先前我們也提到astro的一大特色是他可以兼容其他的框架,此次的內容是影片的第16部

首先我們先來替我們的專案安裝preact(又是一個新框架XDDD),我們可以在astro的官網上面看到我們該如何添加preact

npx astro add preact

https://ithelp.ithome.com.tw/upload/images/20241006/20169170lLUzTPToZF.png

在開始進行安裝之後系統會問我們需不需要在astro專案上為preact去做配置,我們只要按y就好,系統就會幫我們建設起含有preact的環境,當我們安裝完之後就可以自由撰寫preact啦~

preact的話簡單描述一下就是更佳輕量化的react框架,當然因為我並不是react出身的所以對於react也沒有到那麼熟,今天只是單就影片演示還學習一下多框架應用的內容

https://ithelp.ithome.com.tw/upload/images/20241006/20169170fHJxS555Lo.png

我們創建了一個.jsx檔,並且去撰寫一個簡單的按鈕組件,當點擊按鈕時就會更動h3標籤中的文字去隨機更動變數Greeting的內容,並讓我們在首頁的部分導入相關組件(先忽略掉下圖的ts警告)

https://ithelp.ithome.com.tw/upload/images/20241006/20169170vPKQbK2bRo.png

https://ithelp.ithome.com.tw/upload/images/20241006/20169170PunCgI1Ofm.png

這時候我們就可以看到我們首頁的畫面多的一個按鈕,如果點擊他的話,aaa的部分就會隨機換成我們message陣列的內容,不過當我們點擊的時候卻發現沒有反應,發現原來我們是少了所謂的指令

回到我們的程式碼,我們在做一個一模一樣的元件,只是我們這次增加了一個指令:

https://ithelp.ithome.com.tw/upload/images/20241006/201691706F0a0BsuJo.png

我們只是多寫了一個 client:load 的內容,當我們會到頁面的時候就可以看到我們寫的點擊功能是可以運作的!

https://ithelp.ithome.com.tw/upload/images/20241006/20169170dWdLrxf7ds.png

https://ithelp.ithome.com.tw/upload/images/20241006/20169170KLlT0Txlp1.png

我們打該f12來看,可以看到雖然是同樣的內容,但下面的內容卻被一個叫做astro-island的標籤給包裹住了,這個就是astro的島嶼組件,當我們加入client:load 後,原本靜態的網頁元件就會去載入屬於自己的js的內容,以達到大部分頁面都是靜態內容,只有該元件的js內容被激發(詳情可以看影片的解釋)


上一篇
和2魚坐牢的第二十五天-Astro之標籤頁建立2
下一篇
和2魚坐牢的第二十八天-Astro之主題切換
系列文
和鱷魚組長的坐牢30天之vue的簡易todolist和Astro的簡易部落格實現30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言